gRPC (Google Remote Procedure Call) — это фреймворк для удаленных вызовов процедур (RPC), который использует Protocol Buffers (protobuf) для описания API и передачи данных
HTTP 2
Быстрее на 10-15%
Бинарный формат, а не текстовый. protobuf. JSON не сжимаем и избыточен
Поток данных, двунаправленная
Автогенерация кода
набор инструментов/платформа от Google
Для микросервисной архитектуре хорош
## Формат данных
protobuf
Можно сжать
Строгая типизация
ДЕсереализация и Сереализация данных с protobuf
Выигрыш в скорости большой
Тут генерится код на разные языки
Прогеру не нужно у себя вписывать протоколы, адрес. callback
Плюсы
-
Меньше размер сообщений
-
Выше скорость в несколько раз по сравнению с REST
-
Генерация кода API
-
Возможность потоковой передачи данных
Минусы
-
Не человеко-читаемый формат
-
Высокий порог вхождения
-
Не поддерживается браузерами